package org.lanqiao.tjut.model;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.Scanner;

import org.apache.commons.dbutils.handlers.BeanListHandler;
import org.lanqiao.tjut.bean.StuBean;
import org.lanqiao.tjut.db.DBFactory;

public class ManStuInfModel {
	Scanner input = new Scanner(System.in);

	/**
	 * 删除学生信息
	 */
	public void deleteStuInf() {
		// 删除学生信息
		System.out.println("请输入需要删除学生信息ID：");

		int bDele = input.nextInt();
		String strS = "delete from stu where stu_id=?";
		Object[] params = { bDele };
		int i1 = DBFactory.getDBDriverInstance().update(strS, params);
		if (i1 > 0) {
			System.out.println("数据删除成功");
		}
	}

	/**
	 * 修改学生信息
	 */
	public void modifyStuInf() {
		// 更新学生信息
		System.out.println("请输入需要更新学生信息ID：");
		String strID = input.next();
		System.out.println("修改学生姓名为：");
		String strName = input.next();
		String strSql = "update  stu set stu_name=? where stu_id=?";
		Object[] params = { strName, strID };
		int i = DBFactory.getDBDriverInstance().update(strSql, params);
		if (i > 0) {
			System.out.println("数据更新成功");
		}
	}

	/**
	 * 添加学生信息
	 */
	public void addStuInf() {

		String strSql = "INSERT INTO STU( stu_name, stu_sex,stu_age,stu_password,stu_number,stu_ad) "
				+ "VALUES (?, ?, ?,?,?,?)";
		List<Object> lstParas = new ArrayList<>();
		// 组织数据查询操作sql语句

		System.out.println("请输入需要添加学生的姓名：");
		String strName = input.next();
		System.out.println("请输入需要添加学生的性别：");
		String strSex = input.next();
		System.out.println("请输入需要添加学生的年龄：");
		String strAge = input.next();
		System.out.println("请输入需要添加学生的密码：");
		String strPS = input.next();
		System.out.println("请输入需要添加学生的账号：");
		String strNum = input.next();
		System.out.println("请输入需要添加学生的地址：");
		String strAD = input.next();

		// 添加参数

		lstParas.add(strName);
		lstParas.add(strSex);
		lstParas.add(strAge);
		lstParas.add(strPS);
		lstParas.add(strNum);
		lstParas.add(strAD);
		int i = DBFactory.getDBDriverInstance().update(strSql, lstParas.toArray());

		// 根据数据操作结果进行业务逻辑处理
		if (i > 0) {
			System.out.println("数据添加成功");
		}

	}

	/**
	 * 查询学生信息
	 */

	public void searchStuInf() {
		// 组织数据查询操作sql语句
		System.out.println("请输入需要查询学生的年龄范围：");
		String strAge = input.next();
		String strSql = "select * from STU where stu_age<?";
		// 数据库操作sql语句的参数
		Object[] params = { strAge };
		List<StuBean> lstDepts = DBFactory.getDBDriverInstance().query(strSql, new BeanListHandler<>(StuBean.class),
				params);
		// 根据数据操作结果进行业务逻辑处理
		Iterator<StuBean> it = lstDepts.iterator();
		while (it.hasNext()) {
			System.out.println("\t" + it.next());
		}
	}

	/**
	 * 保存学生信息
	 */
	public void saveStuInf() {
		// TODO Auto-generated method stub

	}

}
